前面講了一些基礎的概念,我想開始為期兩天的建構輕量級模型,以免同學們睡著。
但如同實驗課,在實操之前,老師總得屁話個幾句,ㄟ,終究還是成為自己不喜歡的樣子,沒辦法。
不同於我們常見的閉源模型(ChatGPT、Claude、Gemini),每一次的提問、思考、輸出,都是在算錢的。GitHub copilot在講你,有夠摳
自己建立開源的模型(就是供你免費使用),使用本地電腦運行,就不需要考慮這個問題了,但會取決於電腦的能力,其實也是考慮口袋深度。另外更可以依照需求,對參數進行微調;而且,因為把模型裝到地端,不用網路也能運行喔。
在建立地端模型之前,需要先講解部署環境 這個概念
部署環境--讓模型實際運作、能被使用者或其他系統呼叫、使用的那個運行環境。
藉由這個"環境"去把模型叫出來,也順便把電腦的GPU叫出來。(沒有GPU也沒關係,這次教學都是以輕量級模型,用CPU也能跑,只是速度比較慢)
這些環境會負責:
載入模型、管理記憶體、使用GPU、接收請求、回傳結果等..
目前市面上常見的有:
再稍微知道這些資訊後,先要檢查自己設備的資訊,以便判斷可以裝甚麼模型
接下來都會以Windows的powershell進行操作,之後使用Ollama 作為媒介
因為powershell是物件導向的Command-line-shell,所以指令的 "|" 沒有問題喔!!
Get-CimInstance Win32_Processor |
>> Select-Object Name, NumberOfCores, NumberOfLogicalProcessors
Get-CimInstance Win32_ComputerSystem |
Select-Object TotalPhysicalMemory
接著下面這行指令可以換成GB顯示
"{0:N2} GB" -f ((Get-CimInstance Win32_ComputerSystem).TotalPhysicalMemory / 1GB)
Get-CimInstance Win32_VideoController |
Select-Object Name
Get-CimInstance Win32_VideoController |
Select-Object Name,@{
Name="VRAM(GB)"
Expression={:Round($_.AdapterRAM/1GB,2)}
}
| 情境 | 規格 | 可跑的模型 |
|---|---|---|
| 純 CPU / RAM | <16GB | 3B 以下小模型,速度慢 |
| 純 CPU / RAM | >=32GB | 7B~13B 可跑但偏慢,適合開發測試 |
| NVIDIA GPU | 8GB VRAM | 7B~8B |
| NVIDIA GPU | 12~16GB VRAM | 13~14B |
| NVIDIA GPU | 24GB | 30B~32B 量化 |
| NVIDIA GPU | 48GB/雙卡 | 70B 量化 |
| Apple Silicon | 統一記憶體(RAM=VRAM) | 依記憶體大小,16GB→7B、32GB→13B、64GB+→30B |
這邊還是建議把剛剛powershell的指令輸出給AI,請AI協助你判斷。
明天再去Ollama抓模型下來
上面設備的訊息,你也可以打開設定來看,哈哈
這本書可以加減看看,對之後的課程很有幫助(算是這系列的課的教科書之一😃)
Github: https://github.com/datawhalechina/hello-agents